<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>类型转换-数值</title>
    <script>
        /* 
            将其他的数据类型转换为数值
                1.使用Number()函数来将其他类型转换为数值
                    转换的情况：
                        - 字符串：
                            - 如果字符串是一个合法的数字，则会自动转换为对应的数字
                            - 如果字符串不是合法数字，则转换为NaN
                            - 如果字符串是空串或纯空格的字符串，则转换为0
                        - 布尔值：
                            - true转换为1，false转换为0
                        - null 转换为 0
                        - undefined 转换为 NaN

                专门用来将字符串转换为数值的两个方法           
                    parseInt() —— 将一个字符串转换为一个整数
                        - 解析时，会自左向右读取一个字符串，直到读取到字符串中所有的有效的整数
                        - 也可以使用parseInt()来对一个数字进行取整
                    parseFloat() —— 将一个字符串转换为浮点数 
                        - 解析时，会自左向右读取一个字符串，直到读取到字符串中所有的有效的小数

        */
        let a = '123' // 123
        a = 'abc' // NaN
        a = '3.1415926' // 3.1415926
        a = '11px' // NaN
        a = ''  // 0
        a = '    ' // 0

        a = true // 1
        a = false // 0

        a = null // 0
        a = undefined // NaN

        // console.log(typeof a, a)

        a = Number(a)
        // console.log(typeof a, a)
        
        let b = '123px'
        b = 'a123'
        b = '123.45'
        // b = 456.123
        console.log(typeof b, b)

        b = parseInt(b)
        console.log(typeof b, b)
        
        

    </script>
</head>
<body>
    
</body>
</html>